package com.letfox.test.example;

import java.math.BigDecimal;
import java.util.Date;

import org.apache.ibatis.session.SqlSession;
import org.junit.Test;

import com.letfox.common.util.UUIDHexGenerator;
import com.letfox.finance.dao.NoviceInfoDao;
import com.letfox.finance.enums.FINDelEnums;
import com.letfox.finance.enums.FINInoutTypeEnums;
import com.letfox.finance.enums.FINIsDrawEnums;
import com.letfox.finance.enums.FINIsDrawEnums.FINIsDraw;
import com.letfox.finance.enums.FINNoviceContentEnums;
import com.letfox.finance.model.FINNoviceInfo;
import com.letfox.test.util.MyBatisUtil;

public class NoviceInfoExample {

	private NoviceInfoDao noviceInfoDao;
	
	@Test
	public void add(){
		SqlSession session = MyBatisUtil.getSqlSession(true);
		FINNoviceInfo finNoviceInfo = new FINNoviceInfo();
		finNoviceInfo.setFinNoviceId(UUIDHexGenerator.generator());
		finNoviceInfo.setFinNoviceName("海南有限公司");
		finNoviceInfo.setFinNoviceAmount(new BigDecimal("50"));
		finNoviceInfo.setFinNoviceType(FINNoviceContentEnums.FINNoviceContent.INFORMATIONCOSTS.getValue());
		finNoviceInfo.setFinNoviceContent("技术服务");
		finNoviceInfo.setFinNoviceTaxpayerId("110119120");
		finNoviceInfo.setFinNoviceBankName("工商银行");
		finNoviceInfo.setFinNoviceBankAccount("622202220101");
		finNoviceInfo.setFinNoviceReceiver("小鱼儿");
		finNoviceInfo.setFinNoviceMobilePhone("1976460789");
		finNoviceInfo.setFinNoviceAddress("海南中心大楼");
		finNoviceInfo.setRemark("记得发货联系本人");
		finNoviceInfo.setIsDraw(FINIsDrawEnums.FINIsDraw.TURE.getValue());
		finNoviceInfo.setCreateTime(new Date());
		finNoviceInfo.setUpdateTime(new Date());
		finNoviceInfo.setCreateBy("admin");
		finNoviceInfo.setUpdateBy("admin");
		finNoviceInfo.setDel(FINDelEnums.UDMDel.EFFECTIVE.getValue());
		noviceInfoDao = session.getMapper(NoviceInfoDao.class);
		noviceInfoDao.insertSelective(finNoviceInfo);
	}
	
	@Test
	public void update(){
		SqlSession session = MyBatisUtil.getSqlSession(true);
		FINNoviceInfo finNoviceInfo = new FINNoviceInfo();
		finNoviceInfo.setIsDraw(FINIsDrawEnums.FINIsDraw.FALSE.getValue());
		noviceInfoDao = session.getMapper(NoviceInfoDao.class);
		noviceInfoDao.updateByPrimaryKeySelective(finNoviceInfo);
	}
	
	@Test
	public void select(){
		SqlSession session = MyBatisUtil.getSqlSession(true);
		noviceInfoDao = session.getMapper(NoviceInfoDao.class);
		FINNoviceInfo finNoviceInfo = noviceInfoDao.selectByPrimaryKey("40289a81628ac80401628ac8041b0000");
		System.out.println(finNoviceInfo.toString());
	}

}
